const http = require("http");

// console.log(http);

// 搭建一个简易web服务器
// 涉及到一些服务器和前后端交互的概念

// 路由：接收到的请求地址
// 路由处理：根据接收到的请求地址，执行不同的功能或响应不同的数据
// 路由设定：
    // /   功能1
    // /abc   功能2
    // /qwe   功能3

    // 是一个功能类请求
    // /api/login
    // 是一个文件类请求
    // /indexedDB


// 1. 创建一个服务
const serverObj = http.createServer((req, res)=>{
    // 3. 编写服务器功能
    // 编写任意功能，都会在服务器被请求时执行
    // console.log("服务器被请求了")
    
    // req，request：前端向后端发送的请求对象，可以获取到前端向后端发送的数据和其他信息
    // res，response：后端向前端发送的响应对象，包含了向前端发送的一些信息

    // req
    // 发起请求的url
    // console.log(req.url)
    
    // 发起请求的方式
    // consoe.log(req.method)

    // console.log(req.method, req.url);

    // console.log(req.url);

    // 路由处理
    if(req.url.includes("/api")){
        apiHandel(req, res);
    }else{
        fileHandle(req, res);
    }
})

// 功能类请求的处理
function apiHandel(req, res){
    console.log("功能类请求")
    // 向前端发起响应数据
    res.write("1");
    // 向前端发起响应结束
    res.end();
}

// 文件类请求的处理
function fileHandle(req,res){
    console.log("非功能类请求")
    res.write("2");
    res.end();
}

// 2. 挂载到指定端口
serverObj.listen(3000, ()=>{
    console.log("服务器开启成功...")
});

// 默认的本地地址：localhost或127.0.0.1
